console.log("stream是一个抽象接口，NODE中很多对象都实现了这个接口。例如，对http模块的request对象就是一个stream。");
console.log("stream有四种类型，readable可读操作 writable可写操作 duplex可读可写操作 transform操作被写入数据，然后读出结果");
console.log("所有的Stream对象都是EventEmitter的实例。常用的事件有：data当有数据可读时触发 end没有更多的数据可读时触发 " +
    "error在接收和写入过程中发生错误时触发 finish所有数据已被写入到底层系统时触发");

const fs = require("fs");
var data = "";

//创建可读流
const readStream = fs.createReadStream("input.txt");
//设置编码格式
readStream.setEncoding("UTF8");
//处理流事件
readStream.on("data", function (chunk) {
  data += chunk;
});
readStream.on("end", function () {
  console.log(data);
});
readStream.on("error", function (err) {
  console.log(err);
});

console.log("程序结束");





